# -*- mode: python ; coding: utf-8 -*-

# 本文件用于 PyInstaller，以打包桌面版应用。

from kivy_deps import hookspath, get_deps_all

# 分析应用的入口点和依赖
a = Analysis(
    ['src/desktop/app.py'],
    pathex=['.'],
    binaries=[],
    datas=[
        ('src/prompts', 'src/prompts'),
        ('templates', 'templates')
    ],
    hiddenimports=[],
    hookspath=hookspath(),
    hooksconfig={},
    runtime_hooks=[],
    excludes=[],
    win_no_prefer_redirects=False,
    win_private_assemblies=False,
    cipher=None,
    noarchive=False,
)

# 创建 Python Zipped Archive (PYZ)
pyz = PYZ(a.pure, a.zipped_data, cipher=None)

# 创建可执行文件
exe = EXE(
    pyz,
    a.scripts,
    [],
    exclude_binaries=True,
    name='LocalSmartVideoSummary',
    debug=False,
    bootloader_ignore_signals=False,
    strip=False,
    upx=True,
    console=True,  # 设置为 False 以在没有控制台的情况下运行窗口化应用
    # icon='assets/icon.ico' # (可选) 取消注释并设置 Windows 图标路径
)

# 为 macOS 创建 .app 应用包
app = BUNDLE(
    exe,
    name='LocalSmartVideoSummary.app',
    # icon='assets/icon.icns', # (可选) 取消注释并设置 macOS 图标路径
    bundle_identifier=None,
    info_plist={
        'NSHighResolutionCapable': 'True'
    },
    **get_deps_all()
)
